#ifndef COMMON_GRAPHICS_TEXTURE_H
#define COMMON_GRAPHICS_TEXTURE_H


#include "GraphicsResource.h"


class Texture : public GraphicsResource
{
public:
    enum Format
    {
        kRgba8,
        kRgba16f,
        kDepthStencil,
    };

    enum Filter
    {
        kNearest,
        kLinear,
    };

                    Texture(Format format, size_t width, size_t height, Filter minFilter, Filter magFilter, const void* data);
                    ~Texture();

private:
    size_t          width;
    size_t          height;
};


void BindTexture(const Texture* texture, size_t index);


#endif
